#!/usr/bin/env node

var amqp = require('amqplib/callback_api');

amqp.connect('amqp://admin:clwy1234@localhost', function (error0, connection) {
  if (error0) {
    throw error0;
  }
  connection.createChannel(function (error1, channel) {
    if (error1) {
      throw error1;
    }

    var queue = 'hello';
    // 创建一个队列。如果队列不存在，则创建一个队列，如果已经存在，，则不会创建
    // durable: 表示队列是否持久化，如果设置为true，则重启后队列不会消失
    channel.assertQueue(queue, {
      durable: false,
    });

    // 打印等待接收的数据
    console.log(' [*] Waiting for messages in %s. To exit press CTRL+C', queue);
    console.log(' [*] 等待接收消息在 %s. 队列中 按CTRL+C退出', queue);
    // 当接收到消息
    channel.consume(
      queue,
      function (msg) {
        console.log(' [x] Received %s', msg.content.toString());
        console.log(' [x] 接收到了 %s', msg.content.toString());
      },
      {
        noAck: true,
      }
    );
  });
});
